{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "f6e1e215-d8f4-4c0e-b199-c0b224f15904",
   "metadata": {},
   "source": [
    "Chapter 10\n",
    "# 用Matplotlib绘制正弦、余弦线图\n",
    "Book_1《编程不难》 | 鸢尾花书：从加减乘除到机器学习 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "3d867d82-028a-45a1-aed7-f9d3d127d605",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 导入包\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 生成横轴数据\n",
    "x_array = np.linspace(0, 2*np.pi, 100)\n",
    "# 正弦函数数据\n",
    "sin_y = np.sin(x_array)\n",
    "# 余弦函数数据\n",
    "cos_y = np.cos(x_array)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5fb45ba3-a827-4eb9-9290-db2f810fdd69",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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pyM8PBzh4eG4b1CD09fXF2vXrgUgUytGjBiBadOmYe3atTh58iT69esHJycnvP3221p9GybPxcUFRZ9ya5aIiIjI0pnNhKCJEydi6dKlmW11VHjnzp1o0aIFACAiIgIJCQmZzxkzZgwePnyIIUOGZG4Usm3bNqPUQDZ3f/75JyZPnowLFy7AyckJtWvXxvr16/HBBx9kmWLRokUL+Pn5wcHBAT///DPs7OwwePBgTJo0SdP4iYiIiPKK2STIgYGBCAwMfOpzHp8aoNPpMGnSpHxP5urWBR4V0cg3JUrI1pu5ERUVhbfeegszZ85Ejx49cO/ePezZs+eJUyuWLl2KkSNH4uDBgwgNDUW/fv3QuHFjtG3b1ojfAREREZFpMJsE2ZxER0vBdVMVFRWFtLQ09OzZEz4+PgCAmjVrPvH5fn5++PzzzwEAlSpVwrx587B9+3YmyERERGSRmCDnAS1293me16xVqxZat26NmjVron379mjXrh1ee+01FCtWLMfn+/n5ZWl7eXkhJibmZcIlIiIiMllMkPNAbqc6aMXa2hrBwcHYv38/tm3bhu+++w7jxo3DwYMHc3z+47UFdTodMjIy8iNUIiIionxnNlUsyLh0Oh0aN26MyZMnIywsDHZ2dpkVQIiIiIgKMo4gF0AHDx7E9u3b0a5dO3h4eODgwYOIjY1F1apVceLECa3DIyIiItIUR5ALoCJFimD37t3o1KkTKleujPHjx+Obb75Bx44dtQ6NiIiISHMcQS6AqlatiqCgoBw/9ngpvZCQkGzP4TbUREREZMk4gkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlgglxAZWRkYMaMGahYsSLs7e3h7e2NqVOnAgD++ecftGrVCo6OjnBzc8PAgQNx//79zM8NCQlB/fr1UahQIRQtWhSNGzfGlStXtPpWiIiIiIzKRusALFLdukB0dP6+ZokSwJEjuX762LFj8dNPP2HOnDlo0qQJoqKicPbsWSQmJqJDhw5o2LAhDh8+jJiYGLz//vsYOnQoAgMDkZaWhu7du2PAgAFYsWIFUlJScOjQIeh0ujz85oiIiIjyDxPkvBAdDVy/rnUUT3Tv3j18++23mDdvHvr27QsAqFChApo0aYKffvoJDx8+xC+//IJChQoBAObNm4euXbtixowZsLW1RUJCArp06YIKFSoAAKpWrarZ90JERERkbEyQ80KJEib9mmfOnEFycjJat26d48dq1aqVmRwDQOPGjZGRkYGIiAg0a9YM/fr1Q/v27dG2bVu0adMGb7zxBry8vIzybRARERFpjQlyXniOqQ5acHR0fOLHFEV54nQJ9fiSJUswbNgwBAUFYdWqVRg/fjyCg4PRsGHDPImXiIiIKD9xkV4BVKlSJTg6OmL79u3ZPlatWjWEh4fjwYMHmcf27dsHKysrVK5cOfNY7dq1MXbsWOzfvx81atTA8uXL8yV2IiIiorzGBLkAcnBwwCeffIIxY8bgl19+wcWLF3HgwAEsWrQI77zzDhwcHNC3b1+cPHkSO3fuxIcffog+ffrA09MTly5dwtixYxEaGoorV65g27ZtOHfuHOchExERkcXgFIsCasKECbCxscHEiRNx48YNeHl5YfDgwXBycsLWrVsxfPhw1KtXD05OTujVqxdmz54NAHBycsLZs2exdOlSxMfHw8vLC0OHDsWgQYM0/o6IiIiIjIMJcgFlZWWFcePGYdy4cdk+VrNmTezYsSPHz/P09MTatWvzOjwiIiIizXCKBRERERGRASbIREREREQGmCATERERERlggkxEREREZIAJshFkZGRoHYLJ4s+GiIiIzA2rWLwEOzs7WFlZ4caNGyhevDjs7OyeuAtdQaMoClJSUhAbGwsrKyvY2dlpHRIRERFRrjBBfglWVlYoV64coqKicOPGDa3DMUlOTk7w9vaGlRVvVhAREZF5YIL8kuzs7ODt7Y20tDSkp6drHY5Jsba2ho2NDUfViYiIyKwwQTYCnU4HW1tb2Nraah0KEREREb0k3vcmIiIiIjJgNgny1KlT0ahRIzg5OaFo0aK5+px+/fpBp9NleTRs2DBvAyUiIiIis2Y2CXJKSgpef/11/Pe//32uz+vQoQOioqIyH5s3b86jCImIiIjIEpjNHOTJkycDAAIDA5/r8+zt7VGiRIlcPz85ORnJycmZ7YSEBADArVu3nut1iZ5XamoqEhMTER8fz/nslKfY1yi/sK9RflHzNEVRjPL1zCZBflEhISHw8PBA0aJF0bx5c0ydOhUeHh5PfP706dMzk3FDlStXzssw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aR0O0XNjgkxERERGxQt/MndMkImIiIiIDHAOMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhFRARAbG4sSJUpg2rRpmccOHjwIOzs7bNu2TcPIiIhMj05RFEXrIIiIKO9t3rwZ3bt3x/79++Hr64vatWujc+fOmDt3rtahERGZFCbIREQFyAcffIC///4b9erVw/Hjx3H48GE4ODhoHRYRkUlhgkxEVIA8fPgQNWrUwNWrV3HkyBH4+flpHRIRkcnhHGQiogLk33//xY0bN5CRkYErV65oHQ4RkUniCDIRUQGRkpKC+vXrw9/fH76+vpg9ezb++ecfeHp6ah0aEZFJYYJMRFRAfPzxx/jzzz9x/PhxODs7o2XLlihcuDA2btyodWhERCaFUyyIiAqAkJAQzJ07F8uWLUORIkVgZWWFZcuWYe/evViwYIHW4RERmRSOIBMRERERGeAIMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERlggkxEREREZIAJMhERERGRASbIREREREQGmCATERERERn4f/DBRM7C0RMBAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 设置图片大小\n",
    "fig, ax = plt.subplots(figsize=(8, 6))\n",
    "\n",
    "# 绘制正弦和余弦曲线\n",
    "ax.plot(x_array, sin_y, \n",
    "        label='sin', color='b', linewidth=2)\n",
    "ax.plot(x_array, cos_y, \n",
    "        label='cos', color='r', linewidth=2)\n",
    "\n",
    "# 设置标题、横轴和纵轴标签\n",
    "ax.set_title('Sine and cosine functions')\n",
    "ax.set_xlabel('x')\n",
    "ax.set_ylabel('f(x)')\n",
    "\n",
    "# 添加图例\n",
    "ax.legend()\n",
    "\n",
    "# 设置横轴和纵轴范围\n",
    "ax.set_xlim(0, 2*np.pi)\n",
    "ax.set_ylim(-1.5, 1.5)\n",
    "\n",
    "# 设置横轴标签和刻度标签\n",
    "x_ticks = np.arange(0, 2*np.pi+np.pi/2, np.pi/2)\n",
    "x_ticklabels = [r'$0$', r'$\\frac{\\pi}{2}$', \n",
    "                r'$\\pi$', r'$\\frac{3\\pi}{2}$', \n",
    "                r'$2\\pi$']\n",
    "ax.set_xticks(x_ticks)\n",
    "ax.set_xticklabels(x_ticklabels)\n",
    "\n",
    "# 横纵轴采用相同的scale\n",
    "ax.set_aspect('equal')\n",
    "plt.grid()\n",
    "# 将图片存成SVG格式\n",
    "plt.savefig('正弦_余弦函数曲线.svg', format='svg')\n",
    "\n",
    "# 显示图形\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
